package com.donghuayuan.kotlincar.net

import com.donghuayuan.kotlincar.bean.BrandListBean
import com.donghuayuan.kotlincar.bean.LogoBean
import com.donghuayuan.kotlincar.bean.ModelBean
import retrofit2.Call
import retrofit2.http.GET
import retrofit2.http.Query

/**
 * 品牌列表
    接口地址：
    http://apis.juhe.cn/cxdq/brand
    请求方式：http get/post
    返回类型：json
    接口描述：返回车辆品牌所有列表，或更具中文拼音首字母查询品牌列表
    接口调试： API测试工具
    请求Header：

    名称	值
    Content-Type	application/x-www-form-urlencoded
    请求参数说明：

    名称	必填	类型	说明
    first_letter	否	string	品牌名称拼音首字母，如：A
    key	是	string	在个人中心->我的数据,接口名称上方查看
 */
interface CarApi {
    companion object{
        //需要去个人中心查看OpenId的值
        val key="JH4a7f9eb354e82ff6152a622b8f2c163e"
        val base_url="http://192.168.100.74:8080/"
    }

    //获取品牌请求的完整地址是:http://apis.juhe.cn/cxdq/brand
    @GET("brand") //其实请求就是base_url+brand
    open fun getCarLogo(//请求的参数是key和first_letter
        @Query("key") key:String,
        @Query("first_letter") first_letter:String
    ):Call<LogoBean>? //返回的是call对象，类型是LogoBean,返回的可能为空

    /**
     * 根据品牌查询车系列表
        接口地址：
        http://apis.juhe.cn/cxdq/series
        请求方式：http get/post
        返回类型：json
        接口描述：根据车辆品牌ID查询旗下车系列表
        接口调试： API测试工具
        请求Header：

        名称	值
        Content-Type	application/x-www-form-urlencoded
        请求参数说明：

        名称	必填	类型	说明
        brandid	是	string	车辆品牌ID
        levelid	否	string	车系类型ID,,1:微型车,2:小型车,3:紧凑型车,4:中型车,5:中大型车,6:大型车,7:跑车,8:MPV,11:微面,12:微卡,13:轻客,14:低端皮卡,15:高端皮卡,16:小型SUV,17:紧凑型SUV,18:中型SUV,19:中大型SUV,20:大型SUV,21:紧凑型MPV
        key	是	string	在个人中心->我的数据,接口名称上方查看
     */

    @GET("series")
    open fun getBrandList(
        @Query("brandid") brandid:String,
        @Query("key") key:String
    ):Call<BrandListBean>?

    @GET("models")
    open fun getModelList(
        @Query("series_id") series_id:String,
        @Query("year") year:String,
        @Query("key") key:String
    ):Call<ModelBean>?
}